using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Microsoft.Xna.Framework;
using Microsoft.Xna.Framework.Graphics;
using Microsoft.Xna.Framework.Input;

namespace Ted_D_Bear
{
    enum ObjType { PLAYER = 0, LEVELOBJ }
    enum Layer { FRONT = 0, MIDDLE, BACK }
    
    class CBaseObject
    {
        ////////////////////////////////////////////
        // Class Members
        ////////////////////////////////////////////
        // The current layer the object resides on
        Layer m_nLayer;
        // The type of object this is
        ObjType m_nObjectType;
        // The position of the object
        public Vector2 m_v2Positon;

        ////////////////////////////////////////////
        // Accessors / Setters
        ////////////////////////////////////////////
        public void SetLayer(Layer nLayer) { m_nLayer = nLayer; }
        public Layer GetLayer() { return m_nLayer; }
        public void SetObjType(ObjType nType){ m_nObjectType = nType;}
        public ObjType GetObjType(){ return m_nObjectType;}

        ////////////////////////////////////////////
        // Virtual functions for Derived Classes to Override
        ////////////////////////////////////////////
        virtual public void Initialize(Texture2D texture, Vector2 position) { }
        virtual public void Update(GameTime gameTime) { }
        virtual public void Draw(SpriteBatch spriteBatch) { }
    }
}
